Jump to content
Fórum Script Brasil
  • 0

C E C++: Principais Diferenças


Andersonjb

Question

E ai, pessoal, beleza? Postei esse tópico para discutir as principais diferenças entre c e c++, por exemplo: c tem classes, já que classes fazem parte da programação orientada a objeto? e até aonde vai o c, por exemplo: o que o c++ tem que o c não tem e vice versa?

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

c tem classes, já que classes fazem parte da programação orientada a objeto?

Nops... C++ tem classes, C não.

e até aonde vai o c, por exemplo: o que o c++ tem que o c não tem e vice versa?

O que o C++ tem que o C não tem é justamente o suporte a OO. Ou seja, o ++ ali significa um "incremento" em C. É claro que o suporte a OO traz consigo uma gama de coisas novas: herança, polimorfismo, generics, sobrecarga de operadores e métodos (um tipo de polimorfismo), etc.

Essa página (blog) aqui dá uma boa idéia dos prós e contras de C sobre C++: http://lambda-the-ultimate.org/node/view/663

Abraços,

Graymalkin

Link to comment
Share on other sites

  • 0

Putz, cara, o blog ta em ingles, eu mal falo o portugues... Assim, ate aonde vai o c? Por exemplo, se eu não me engano o c++ vai até UML, não e? E o c, qual é o seu limite?

Link to comment
Share on other sites

  • 0
Putz, cara, o blog ta em ingles, eu mal falo o portugues... Assim, ate aonde vai o c? Por exemplo, se eu não me engano o c++ vai até UML, não e? E o c, qual é o seu limite?

Opa, acho está que havendo uma certa confusão aqui... Como assim, "até onde vai"? UML é uma linguagem para especificação, modelagem e documentação de sistemas. Você pode utilizar UML para modelar qualquer entidade real e depois codificar essa entidade em qualquer linguagem OO (ou com suporte a OO, como é o caso de C++ e Java, por exemplo). C++ não foi feito especificamente para se adequar às imposições da UML (até porque esta veio *depois* de C++).

Da mesma maneira não dá para definir um limite para C. Para se ter uma idéia de como C (não C++) é amplamente utilizada e demonstra grande poder, basta olhar para outras linguagens que foram criadas com ela (Python, Perl, Java e PHP são exemplos).

Abraços,

Graymalkin

Link to comment
Share on other sites

  • 0

Acho que você ainda não entendeu, por exemplo: quando digo o limite de c, não quero dizer o que ele pode fazer, mas sim o que ele tem, entendeu? Por exemplo: quando c e comparada a c++, se ele tem um ponto em que ele para ali e não tem mais coisas do que o c++, entende? Ate que instrução ou função pode ser possivel programar nele!

Link to comment
Share on other sites

  • 0
Acho que você ainda não entendeu, por exemplo: quando digo o limite de c, não quero dizer o que ele pode fazer, mas sim o que ele tem, entendeu? Por exemplo: quando c e comparada a c++, se ele tem um ponto em que ele para ali e não tem mais coisas do que o c++, entende? Ate que instrução ou função pode ser possivel programar nele!

Bom, na minha opinião, não dá pra definir algo assim. Afinal de contas, como definir o "limite" de C++, por exemplo? Como definir o "limite" de qualquer linguagem? Realmente não vejo padrões de comparação que possam tornar essa questão viável. Um programa não é constituído de uma única instrução ou de uma única função. Mas sim de um conjunto de instruções, funções, classes, etc. Assim como uma frase no nosso idioma é constituída de substantivos, adjetivos, verbos, etc. Qual o "limite" do Português, por exemplo? Faço essa correlação entre linguagens de programação e idiomas, porque acho-os muito próximos, em minha concepção.

Além disso, há uma linha tênue entre C e C++. Todos os tipos primitivos de C++ são os mesmos de C, por exemplo, e mais um monte de outras coisas. Portanto, quando você está programando em "C++", na verdade, você está programando em "C/C++".

Certo? wink.gif

Abraços,

Graymalkin

Link to comment
Share on other sites

  • 0

Ah, sei la, quando Ritche fez o compilador de c ele não o fezinfinito, não e? C com certeza tem seus limites, por exemplo: não da a possibilidade de programar OOP, mas eu só queria saber a exatidão desse limite, entendeu?

Link to comment
Share on other sites

  • 0
Ah, sei la, quando Ritche fez o compilador de c ele não o fezinfinito, não e? C com certeza tem seus limites, por exemplo: não da a possibilidade de programar OOP, mas eu só queria saber a exatidão desse limite, entendeu?

Sim, mas como dizem: "o limite é a imaginação". Com estruturas (struct) e ponteiros em C, por exemplo, acho que não seria difícil simular classes e objetos. Apesar de C não ser ou ter suporte OO, ela foi utilizada para criação de linguagens OO (como Python, por exemplo) e com suporte a OO (como Java, por exemplo). Além disso, OO não pode ser considerado o cume da evolução das linguagens (já que estas, de uma forma ou outra, sempre evoluem). Certo? wink.gif

Abraços,

Graymalkin

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...