标签: local

Delphi Unit局部变量 - 如何使每个实例都是唯一的?

在下面的单元中,我在IMPLEMENTATION部分声明了一个变量 - 该单元的本地变量.我还有一个在TYPE部分声明的过程,该过程接受一个参数并将该参数分配给有问题的局部变量.这个TFrame的每个实例都通过一个唯一的变量传递passMeTheVar.

我想要它做的是为帧的每个实例保留它自己的变量版本,与其他变量不同,并使用它来定义它的运作方式.然而,似乎正在发生的是所有实例都使用相同的值,即使我明确地将每个实例传递给另一个变量.

即:

Unit FlexibleUnit;
interface
uses
//the uses stuff
type
TFlexibleUnit=class(TFrame)
   //declarations including
   procedure makeThisInstanceX(passMeTheVar:integer);
private
//
public
//
end;

implementation
uses //the uses
var myLocalVar;

procedure makeThisInstanceX(passMeTheVar:integer);
begin
myLocalVar:=passMeTheVar;
end;

//other procedures using myLocalVar 
//etc to the 
end;
Run Code Online (Sandbox Code Playgroud)

现在在另一个Form中的某个地方,我将这个Frame放到了Design窗格上,有时在一个Form上有两个这样的框架,并在适当的位置声明它等等.每个都是独一无二的:

ThisFlexibleUnit : TFlexibleUnit;
ThatFlexibleUnit : TFlexibleUnit;
Run Code Online (Sandbox Code Playgroud)

当我做一个:

ThisFlexibleUnit.makeThisInstanceX(var1); //want to behave in way "var1"
ThatFlexibleUnit.makeThisInstanceX(var2); //want to behave in way "var2"
Run Code Online (Sandbox Code Playgroud)

它们似乎都共享相同的变量"myLocalVar".

原则上,我做错了吗?如果这是正确的方法那么这是调试我所拥有的东西(这个问题太大而无法发布),但如果这在原则上不正确那么有没有办法做我建议的事情?

编辑:

好的,所以这里学到的教训是类定义就是这样.许多类可以放在一个单元中,该Type部分中所有类的所有实例共享单元的实现部分.

delphi variables local instances delphi-units

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

在iPhone sdk4中以编程方式解除/更新本地通知

我正在开发一个在后台运行并将backgroundmode设置为location的应用程序.在didUpdateToLocation:方法中,我想生成本地通知.我希望应用仅在查看以前的通知时显示通知.另一种选择是仅显示最新通知并以编程方式解除所有先前的通知(即,无需用户交互).请指导我怎么可能?

xcode notifications local objective-c ios4

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

jqgrid对不同列上的本地数据进行自定义排序

我有一个jqgrid,其中dataytype是本地的.自动排序适用于每列.我想知道是否可以根据另一列对不同的列进行排序.为了解释这更好的让我们假设我有三列OrderNumber,Address,Phone,和隐藏的列命名State.Address单击列时,我实际上想要排序,如果列是单击的State列.

我想在onSortCol活动中这样做,我想要的东西如下:

onSortCol: function (index, iCol, sortorder) {

     if(index === "Address"){
         //CHANGE SORTED COLUMN TO STATE AND MAKE THE SORT              
     }
},
Run Code Online (Sandbox Code Playgroud)

sorting local jqgrid

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

Titanium - 无法解析本地JSON文件

我试图解析已存储在applicationDataDirectory中的本地JSON文件.我只需要从这个文件中获取项目.运行钛的V.2

JSON数据结构如下所示

{
"object_name": [
    {
        "title": "Burrton",
        "value": "Burrton",
        "homeof": "Chargers",
        "logo": "images/logos/BURRTON.jpg",
        "colors": "#cccccc;#a9a9a9",
        "links": {
            "tsr": "http://www.schurzdigital.com/mfeeds/CollectionFeed.php?site=http%3A%2F%2Fwww.catchitkansas.com&collection=cik_burrton_headlines&title=cik_burrton_headlines&limit=25",
            "sports": "www.schurzdigital.com/mfeeds/CollectionFeed.php?site=http%3A%2F%2Fwww.catchitkansas.com&collection=cik_burden_headlines&title=cik_burden_headlines&limit=25",
            "videos": "http://www.schurzdigital.com/mfeeds/TividFeedConvert.php?site=http%3A%2F%2Fwww.catchitkansas.com&slug=e9c0b075-3230-4a45-803e-7ccb4b7f754e&title=Top%20videos&limit=25",
            "photos": "http://serve.a-feed.com/service/getFeed.kickAction?feedId=1014509&as=8768",
            "stats": {
                "boys": {
                    "football": "http://stats.catchitkansas.com/report_fb-schedule_results.php?sport=15&team=763",
                    "basketball": "http://stats.catchitkansas.com/report_baskb-schedule_results.php?sport=26&team=2946",
                    "cross country": "http://stats.catchitkansas.com/report_cc-schedule_results.php?sport=13&team=764",
                    "golf": "http://stats.catchitkansas.com/report_golf-schedule_results.php?sport=16&team=767",
                    "track": "http://stats.catchitkansas.com/report_trackfield-schedule_results.php?sport=32&team=2948"
                },
                "girls": {
                    "volleyball": "http://stats.catchitkansas.com/report_vb-schedule_results.php?sport=22&team=766",
                    "basketball": "http://stats.catchitkansas.com/report_baskb-schedule_results.php?sport=27&team=2947",
                    "cross country": "http://stats.catchitkansas.com/report_cc-schedule_results.php?sport=13&team=764",
                    "golf": "http://stats.catchitkansas.com/report_golf-schedule_results.php?sport=17&team=768",
                    "track": "http://stats.catchitkansas.com/report_trackfield-schedule_results.php?sport=32&team=2948"
                }
            }
        }
    }
]
}
Run Code Online (Sandbox Code Playgroud)

我使用的代码来解析文件.

var fileName = 'school_select.json';
var file = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory, fileName);

if (file.exists()) {
  var json = file.read();
  var jsonObject …
Run Code Online (Sandbox Code Playgroud)

parsing json local titanium titanium-mobile

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

使用Java创建新的本地数据库

我的目标是创建一个可以使用Java读取和写入的本地数据库.我有一些使用Python操作本地sqlite数据库的经验,并通过VB.Net与Microsoft Azure上的现有网络数据库进行交互,但是用于创建数据库的Java公式正在逃避我.

大多数源(如JDBC Docs)似乎假设您通过网络协议或localhost上托管的数据库访问数据库.我期望的实现是在文件(或文件集合)中创建和存储数据库,以便可以在本地存储和访问它,而无需网络连接(可通过"文件:"协议).

JDBC教程看起来像一次我运行起来将是非常有用的,但目前是超出了我的范围,因为我甚至不具有现有的数据库呢.

许多 消息来源提出了H2,MySQL,Derby或Hypersonic DB等解决方案.但是,由于以下原因,我不愿意安装扩展程序(如果这是正确的术语):

  • 这个项目最初的目的是帮助我学习Java的方法 - 扩大项目的范围将削弱我使用"基础"语言的经验,并可能增加参与"货物崇拜编程"的诱惑
  • 如果这个项目确实被分发给其他用户(虽然不太可能,但仍然!),我不想强​​迫他们安装超过Java的核心.
  • 我根本不知道如何在Java中安装扩展(附加组件?模块?) - 一次一个小步骤!

出于类似的原因,安装Microsoft SQL Server效率不高.

这个答案看起来很接近我的目标; 但是,它给出了错误:

java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost/?user=root&password=rootpassword
Run Code Online (Sandbox Code Playgroud)

并尝试"jdbc:file://targetFile.sql"给出类似的错误.

我已经看到术语"嵌入式"数据库,我认为这是"本地数据库"的一个子集(即本地数据库存储在同一系统中 - 嵌入式数据库是仅由单个应用程序使用的本地数据库) - 如果我的定义有误,请随时纠正我!

java sql database local embedded-database

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

C#局部变量

有人可以解释我为什么得到:

"使用未分配的局部变量number_of_column":if(i <number_of_column -1)

什么是处理这个问题的最佳方法?

static void Main(string[] args)
{ 
    int number_of_column;
    if (Directory.Exists(path))
    {
        var file = dir.GetFiles().OrderByDescending(f => f.LastWriteTime).First();
        string file1 = file.ToString();
        Console.WriteLine(file1);
        StreamReader sr = new StreamReader(path + "\\" + file1);
        string line;
        while ((line = sr.ReadLine()) != null)
        {
            if (start == true)
            {
                string[] line1 = line.Split(',');
                number_of_column = line1.Count();
                i = 0;
                foreach (string s in line1)
                {
                    if ((s != "0") || (!string.IsNullOrEmpty(s)))
                    {
                        col[i] = "checked";

                    }
                    i++;
                }
            }
            else …
Run Code Online (Sandbox Code Playgroud)

c# variables local

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

为什么localarr ==&localarr?

我的意思是,为什么这个数字与控制台相同?

#include <stdio.h>
int main()
{
    char localarr[99];
    printf("%d\n",(int)localarr);
    printf("%d\n",(int)&localarr);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

据我所知,localarr的地址实际上并没有存储在任何变量中.但是生成的代码可以存储在幕后,或者至少gcc可以发出警告,而不是在我将此类函数传递给期望char**的函数时允许段错误.为什么我们有这种行为?

相关:为什么

char **ppl = &localarr;
Run Code Online (Sandbox Code Playgroud)

结果是:

error: cannot convert ‘char (*)[99]’ to ‘char**’
Run Code Online (Sandbox Code Playgroud)

c arrays callstack local memory-address

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

更改函数内的全局变量

我是编程新手,我正在寻找一些关于该怎么做的建议.我正在尝试编写的程序需要用户输入几个数字.我想使用一个函数来测试用户是否为输入的每个值输入一个数字.如果输入不是数字,我希望函数在输入数字之前不断询问数字.我想知道是否有更好的方法将值传递给全局变量,而不是将函数中的每个变量明确声明为全局变量.我不确定是否有更好的方法来做到这一点......

rowNum = None

def numTest(c, d):
    x = False
    while x is not True:    
        try:
            c = raw_input(d)   
            c = float(c)
            x = True
        except:
            print "The value you entered isn't a valid number, please try again."            
    global rowNum 
    rowNum = c

numTest(rowNum, "Enter number of rows: ")
print rowNum
# I want to use the numTest function on several variables...
# e.g.
# numTest(contourLevel, "Enter number of contour levels: ")
# numTest(cellSize, "Enter cell size: ")
# numTest(labelSize, …
Run Code Online (Sandbox Code Playgroud)

python variables global local

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

我如何检查是否存在全局变量或局部变量

我想检查该变量是否存在,如果存在则打印它.

x = 10 

def example(): 

z = 5

print("X (Global variable) : ",x) 
print("Z (example() : ",z)

example() 

print(z) 
Run Code Online (Sandbox Code Playgroud)

当我添加print(z)它时,显然会引发错误,因为没有名为z的变量.

谢谢你的回答.(特别是Jasper,kevin和icantcode)

x = 10 
def example(): 

z = 5

example() 


try:
    print(z)
except NameError:
    print("There is no global variable called Z! ")
Run Code Online (Sandbox Code Playgroud)

python variables global function local

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

从Swift 3中的日期选择器安排使用火灾日期的每周可重复本地通知

因此,我目前正在构建时间表应用程序,并且尝试创建本地通知以在每周的特定日期(每周的特定时间)触发。因此,我要做的第一件事是获取事件开始时间的日期值,然后从开始时间值中减去5分钟,然后安排通知。以前只需键入它就非常容易: notification.repeatInterval = CalendarUnit.WeekOfYear但是现在在Swift 3中不推荐使用该命令,是的,所以我发现的唯一方法是:

 let someMinutesEarlier = Calendar.current.date(byAdding: .minute, value: -5, to: startTimePicker.date)

        let contentOfNotification = UNMutableNotificationContent()

        let interval = someMinutesEarlier?.timeIntervalSinceNow

        contentOfNotification.title = "Event starting"
        contentOfNotification.body = "Some notes"
        contentOfNotification.sound = UNNotificationSound.default()

        let trigger = UNTimeIntervalNotificationTrigger.init(timeInterval: interval!, repeats: true)
        let request = UNNotificationRequest.init(identifier: notificationIdentifier, content: contentOfNotification, trigger: trigger)

        let center = UNUserNotificationCenter.current()
        center.add(request) { (error) in
            print(error as Any)
        }
Run Code Online (Sandbox Code Playgroud)

但是由于someMinutesEarlier中的年份,这仅安排了一次通知(无论重复布尔值设置为true),或者可能是其他原因?任何的想法?

notifications local repeat ios swift

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