相关疑难解决方法(0)

你能用C编写面向对象的代码吗?

你能用C编写面向对象的代码吗?特别是关于多态性.


另请参阅堆栈溢出问题C中的面向对象问题.

c oop object

481
推荐指数
19
解决办法
28万
查看次数

C中的面向对象

什么是一组漂亮的预处理器黑客(ANSI C89/ISO C90兼容),它在C中实现某种丑陋(但可用)的面向对象?

我熟悉一些不同的面向对象语言,所以请不要回答"学习C++!"这样的答案.我读过" 面向对象的ANSI C编程 "(当心:PDF格式)和其他一些有趣的解决方案,但我最感兴趣的是你:-)!


另请参见您能用C编写面向对象的代码吗?

c oop object

152
推荐指数
9
解决办法
7万
查看次数

什么是"真正的"编程语言?

最近一位老师说"PHP不是一种真正的编程语言",但在我看来,这只是一个弱的理由:

  • 它没有编译.
  • 它是脚本化的.
  • 它不会在每个平台上运行.

PHP不被视为"真正的"编程语言吗?什么是"真正的"编程语言?编译语言是否必须认真对待?

背景

两天前,我在学校的A-Level计算课上做过入门课程 - 我们在课程的第一年使用Java.我不熟悉Java,但对常规编程基础(变量,函数,面向对象,循环等)有很好的把握.

我们的第一项任务是老师快速地跑得很快.她没有费心去解释任何概念,它们是如何工作的,或者你将如何实际使用它们,并且看起来非常高兴看到大多数学生(总的来说,他们是编程新手)在他们的座位上没有最简单的想法,她在谈论什么.事后看来,我认为她很快就能看到谁可以真正"处理"计算A-Level,因为学生仍有机会在九月开始之前改变他们的科目.

第一个也是唯一的任务是编写一个Java命令行应用程序来将二进制转换为denary(十进制).我们进行了两个小时的品尝会议,在解释了二元系统是如何工作的之后我们必须开始,尽管总的来说,没有人真正有一个最模糊的想法从哪里开始.一个小时后,有些人比其他人更进一步,但没有人真正取得任何重大成就.老师自己变得很困惑,她从隔壁叫另一位老师.他来帮助人们,看看下一步该去哪儿.

没有吹牛,我可能确实在课堂上有最丰富的经验,并且在练习中得到了最大的成功.他问我以前是否有过任何经历; 我说是的,尤其是在PHP中,并且开玩笑地评论说我可以在几行PHP中编写一些将二进制文件转换为denary的东西,而Java应用程序正迅速发展成几个代码屏幕.

他回答说,"PHP不是一种真正的编程语言!"......!经过一番讨论,他给出了上述三个原因.但是,我指出你可以在任何运行Apache的平台上运行PHP,但我不认为他真的知道Apache是​​什么,并且没有那个!

php programming-languages terminology

68
推荐指数
7
解决办法
4万
查看次数

什么使语言面向对象?

由于没有有意义的条款的辩论毫无意义,我想我会指出房间里的大象并问:究竟什么语言"面向对象"?我不是在寻找这里的教科书答案,而是根据你在你的领域中运作良好的OO语言的经验,无论它是什么.

一个可能有助于首先回答的相关问题是:面向对象语言的原型是什么?为什么?

language-agnostic oop glossary programming-languages

34
推荐指数
4
解决办法
2万
查看次数

Char数组和字符串有什么区别?

我花时间在高级语言上突然想到我不知道Char数组和字符串之间的区别.我认为它们是相同的但不确定.有区别吗?它只是一个带有抽象的Char数组吗?

paradigms

16
推荐指数
3
解决办法
7万
查看次数

'new' 未声明(首次在此函数中使用)

此代码用于哈密顿循环我无法解决此错误:

    In function ‘hamCycle’:
   error: ‘new’ undeclared (first use in this function)
         int *path = new int [V];
                     ^
 note: each undeclared identifier is reported only once for each function it appears in
 error: expected ‘,’ or ‘;’ before ‘int’
         int *path = new int [V];
                         ^
Run Code Online (Sandbox Code Playgroud)

哈密​​顿循环代码是:

/*
 * C Program to Find Hamiltonian Cycle
 */
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#define V 5

void printSolution(int path[]);

/* 
 * check if the vertex v can be added at …
Run Code Online (Sandbox Code Playgroud)

c

0
推荐指数
1
解决办法
9866
查看次数