我们正在开发一个用MatLab编写的小组项目.我们都需要能够同时访问和编写相同的程序.我们正在开发科学的Linux发行版.我们都是物理学家,所以我们宁愿找到一个非常简单的 - 理想的GUI解决方案.
听起来GitHub会让我们同时写入并合并不匹配的代码,但它看起来很复杂.我们并不真正理解push/pull/fork/commit术语,如果有更简单的选择,我们宁愿不研究它.
Matlab中小组项目阻力最小的路径是什么?
一个问题设置 ++的人学习C是
写一个简短的程序来模拟从塔上掉下来的球.首先,应该要求用户以米为单位的塔的初始高度.假设正常重力(9.8 m/s2),并且球没有初始速度.让程序在0,1,2,3,4和5秒后输出球高于地面的高度.球不应该在地下(高度0).
在开始使用C++之前,我有一个合理的,但主要是自学成才的Java知识.所以看看这个问题似乎应该分成两部分
输入类将询问用户的起始高度,该起始高度将传递给控制器.控制器会给计算类提供这个和几秒钟(5),这将创建一个结果数组并将其返回给控制器.控制器会将结果数组交给输出类,然后将它们打印到控制台.
我将实际代码放在底部,但可能不需要.
您可能已经看到问题,尝试返回一个数组.我不问如何避开这个问题,有解决方法在这里和这里.我问,问题是设计糟糕的结果吗?我的程序是否应该以不同的方式构建,出于性能,维护或样式的原因,我不会尝试返回像对象一样的数组?
这是代码(与尝试返回数组不同);
main.cpp中
/*
* Just the main class, call other classes and passes variables around
*/
#include <iostream>
#include "dropSim.h"
using namespace std;
int main()
{
double height = getHeight();
int seconds = 5;
double* results = calculateResults(height, seconds);
outputResults(results);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
getHeight.cpp
/*
* Asks the user for a height from which …Run Code Online (Sandbox Code Playgroud) 在我正在阅读的c ++代码中,有一些数组初始化为
int *foo = new int[length];
Run Code Online (Sandbox Code Playgroud)
还有一些像
int *foo = new int[length]();
Run Code Online (Sandbox Code Playgroud)
我的快速实验无法检测到这两者之间的任何差异,但它们彼此紧挨着使用.
有没有区别,如果有的话呢?
编辑; 因为有一个断言,第一个应该给出不确定的输出,这是一个显示可疑数量为0的测试;
[s1208067@hobgoblin testCode]$ cat arrayTest.cc
//Test how array initilization works
#include <iostream>
using namespace std;
int main(){
int length = 30;
//Without parenthsis
int * bar = new int[length];
for(int i=0; i<length; i++) cout << bar[0] << " ";
cout << endl;
//With parenthsis
int * foo = new int[length]();
for(int i=0; i<length; i++) cout << foo[0] << " ";
cout << endl;
return …Run Code Online (Sandbox Code Playgroud)